home *** CD-ROM | disk | FTP | other *** search
/ TeX 1995 July / TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO / systems / mac / oztex-german / OzTeX-1.4d.sit.bin / OzTeX 1.4 / TeX-inputs / lfonts.new < prev    next >
Text File  |  1992-01-05  |  35KB  |  923 lines

  1. %% 
  2. %% This is file `/usr2/distrib/latex209/nfss/lfonts.new' generated
  3. %% on <1991/11/27> with the docstrip utility (v1.1k). 
  4. %% 
  5. %% The original source files were:
  6. %% 
  7. %% fam.doc 
  8. %% tracefnt.doc 
  9. %% setsize.doc 
  10. %% latint.doc 
  11. %% lfonts.doc 
  12.  
  13. %% 
  14. %% Copyright (C) 1989,1990,1991 by Frank Mittelbach, Rainer Schoepf. 
  15. %% All rights reserved. 
  16. %% 
  17. %% This file is part of the NFSS (New Font Selection Scheme) package. 
  18. %% 
  19. %% IMPORTANT NOTICE: 
  20. %% 
  21. %% You are not allowed to change this file. You may however copy this file 
  22. %% to a file with a different name and then change the copy if you obey 
  23. %% the restrictions on file changes described in readme.mz. 
  24. %% 
  25. %% You are allowed to distribute this file under the condition that it is 
  26. %% distributed together with all files mentioned in readme.mz3. If you 
  27. %% receive only some of these files from someone, complain! 
  28. %% 
  29. %% You are NOT ALLOWED to distribute this file alone. You are NOT ALLOWED 
  30. %% to take money for the distribution or use of either this file or a 
  31. %% changed version, except for a nominal charge for copying etc. 
  32. %% 
  33. %% For error reports in case of UNCHANGED versions see readme files. 
  34. %% 
  35. %% Please do not request updates from us directly. Distribution is done 
  36. %% through Mail-Servers and TeX organizations. 
  37. %% 
  38. \def\fileversion{v1.3a}
  39. \def\filedate{91/11/27}
  40. \def\docdate {90/01/28}
  41.  
  42. %% \CheckSum{532}
  43. %% \CharacterTable
  44. %%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
  45. %%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
  46. %%   Digits        \0\1\2\3\4\5\6\7\8\9
  47. %%   Exclamation   \!     Double quote  \"     Hash (number) \#
  48. %%   Dollar        \$     Percent       \%     Ampersand     \&
  49. %%   Acute accent  \'     Left paren    \(     Right paren   \)
  50. %%   Asterisk      \*     Plus          \+     Comma         \,
  51. %%   Minus         \-     Point         \.     Solidus       \/
  52. %%   Colon         \:     Semicolon     \;     Less than     \<
  53. %%   Equals        \=     Greater than  \>     Question mark \?
  54. %%   Commercial at \@     Left bracket  \[     Backslash     \\
  55. %%   Right bracket \]     Circumflex    \^     Underscore    \_
  56. %%   Grave accent  \`     Left brace    \{     Vertical bar  \|
  57. %%   Right brace   \}     Tilde         \~}
  58. \immediate\write\sixt@@n{File: `fam'
  59.  \space\space\space\space\space\space\space\space
  60.  \space       \fileversion \space <\filedate>  (FMi and RmS)}
  61. \immediate\write\sixt@@n{English Documentation
  62.  \space\space\space\space\space    <\docdate>  (FMi and RmS)}
  63. \def\@spaces{\space\space\space\space}
  64. \def\@gobble#1{}
  65. \def\@empty{}
  66. \def\@height{height}
  67. \def\@depth{depth}
  68. \def\@width{width}
  69. \def\@nomath#1{\relax\ifmmode \font@warning{Don't use \string#1 in
  70.                                            math mode}\fi}
  71. \def\no@alphabet@error#1#2{\relax \ifmmode
  72.     \errhelp\no@alphabet@help
  73.     \errmessage{Math alphabet identifier \string#2 is undefined
  74.                 in math version `#1'.} \fi}
  75. \newhelp\no@alphabet@help
  76.    {Your requested math alphabet is undefined in the current
  77.     math version.^^JCheck the spelling or use the
  78.     \string\addtoversion\space command.}
  79. \def\new@mathgroup{\alloc@8\mathgroup\chardef\sixt@@n}
  80. \let\mathgroup\fam
  81. \let\newfam\new@mathgroup
  82. \def\new@fontshape#1#2#3#4#5{\expandafter
  83.      \edef\csname#1/#2/#3\endcsname{\expandafter\noexpand
  84.                                  \csname #4\endcsname}}
  85. \def\subst@fontshape#1#2#3#4#5#6{\expandafter
  86.      \def\csname#1/#2/#3\endcsname{%
  87.        \font@warning{Font/shape `#1/#2/#3' not available}%
  88.        \font@warning{Substituting `#4/#5/#6' instead}%
  89.        \global\expandafter\let
  90.          \csname#1/#2/#3\expandafter\endcsname
  91.          \csname#4/#5/#6\endcsname}}
  92. \def\extra@def#1#2#3{%
  93.      \def\@tempa##1{#2}%
  94.      \ifx \@tempa\@gobble
  95.        \expandafter\let\csname +#1\endcsname\@gobble
  96.      \else \expandafter\def\csname +#1\endcsname##1{#2}\fi
  97.         \expandafter\def\csname =#1\endcsname{\default@mextra#3}%
  98. }
  99. \let\default@mextra\@empty
  100. \def\preload@sizes#1#2#3#4{{
  101.     \def\next##1,{%
  102.         \if>##1>%
  103.           \let\next\relax
  104.         \else
  105.           \xdef\font@name{\csname#1/#2/#3/##1\endcsname}%
  106.           \pickup@font
  107.           \global\expandafter\let\font@name\relax
  108.         \fi
  109.         \next}%
  110.      \next#4,,}}
  111. \newif\ifdefine@mathfonts \define@mathfontstrue
  112. \def\define@mathsizes#1#2#3{\expandafter \def
  113.     \csname S@#1\endcsname{\gdef\sf@size{#2}\gdef\ssf@size{#3}%
  114.                            \define@mathfontstrue}}
  115. \def\define@nomathsize#1{\expandafter \let
  116.     \csname S@#1\endcsname \define@mathfontsfalse}
  117. \def\fontfamily#1{\edef\f@family{#1}}
  118. \def\fontseries#1{\edef\f@series{#1}}
  119. \def\fontshape#1{\edef\f@shape{#1}}
  120. \let\family=\fontfamily
  121. \let\series=\fontseries
  122. \let\shape=\fontshape
  123. \def\fontsize#1#2{%
  124.     \edef\f@size{#1}%
  125.     \edef\setnew@baselineskip{\baselineskip #2\relax}%
  126.     \edef\lcl@currsize{#1#2}}
  127. \let\size=\fontsize
  128. \def\mathversion#1{\@nomath\mathversion
  129.           \expandafter\ifx\csname mv@#1\endcsname\relax
  130.           \font@warning{The requested version `#1' is unknown}\else
  131.           \edef\math@version{#1}\glb@settings\aftergroup\glb@settings
  132.           \fi}
  133. \def\pickup@font{%
  134.     \expandafter \ifx \font@name \relax
  135.        \define@newfont
  136.     \fi}
  137. {\catcode`\/=12
  138. \gdef\split@name#1/#2/#3/#4\@nil{\def\f@family{#1}%
  139.                                     \def\f@series{#2}%
  140.                                     \def\f@shape{#3}%
  141.                                     \def\f@size{#4}}}
  142. \def\define@newfont{%
  143.   \begingroup
  144.     \escapechar\m@ne
  145.     \expandafter\expandafter\expandafter
  146.        \split@name\expandafter\string\font@name\@nil
  147.     \expandafter\ifx
  148.         \csname\f@family/\f@series/\f@shape\endcsname \relax
  149.       \wrong@fontshape\else
  150.       \csname\f@family/\f@series/\f@shape\endcsname
  151.       \extract@font\fi
  152.   \endgroup}
  153. \def\wrong@fontshape{%
  154.     \edef\@tempa{\csname\f@family/\f@series/\f@shape\endcsname}%
  155.     \font@warning{Font/shape `\@tempa' undefined}%
  156.     \let\f@shape\default@shape
  157.     \expandafter\ifx\csname\f@family/\f@series/\f@shape\endcsname\relax
  158.        \let\f@series\default@series
  159.         \expandafter
  160.           \ifx\csname\f@family/\f@series/\f@shape\endcsname\relax
  161.            \let\f@family\default@family
  162.         \fi \fi
  163.     \font@warning{Using `\f@family/\f@series/\f@shape' instead}%
  164.     \global\expandafter\expandafter\expandafter\let\expandafter\@tempa
  165.            \csname\f@family/\f@series/\f@shape\endcsname
  166.     \xdef\font@name{%
  167.       \csname\f@family/\f@series/\f@shape/\f@size\endcsname}%
  168.     \pickup@font}
  169. \def\strip@prefix#1>{}
  170. \newhelp\nofont@help
  171.         {You requested a family/series/shape/size combination that is
  172.          totally^^Junknown. \space
  173.          There are two cases in which this error can occur:^^J\space
  174.          \space 1) You used the \string\fontsize\space macro to select
  175.                    a size that is not available.^^J\space
  176.          \space 2) If you did not do that, go to your local `wizard'
  177.                    and^^J \@spaces complain fiercely that the font
  178.                    selection tables are corrupted!^^J}
  179. \def\addstuffto@version#1#2{%
  180.     \ifx#1\undefined
  181.            \toks@{}%
  182.          \else
  183.            \toks@\expandafter{#1}%
  184.          \fi
  185.     \xdef#1{%
  186.             \the\toks@
  187.              #2}%
  188.     \gdef\glb@currsize{}}
  189. \def\define@mathalphabet#1#2#3#4#5#6{%
  190.     \def\@tempa{#6}%
  191.     \addstuffto@version#1{%
  192.              \gdef\noexpand#2%
  193.              \ifx\@tempa\@empty
  194.                 {\noexpand\no@alphabet@error
  195.                  \noexpand\math@version
  196.                  \noexpand#2}%
  197.              \else
  198.                 {\noexpand\select@group
  199.                  \noexpand#2#3%
  200.                  \expandafter\noexpand\csname =#4\endcsname
  201.                  \expandafter\noexpand\csname #4/#5/#6\endcsname}%
  202.              \fi}}
  203. \def\define@mathgroup#1#2#3#4#5{%
  204.          \addstuffto@version#1{%
  205.              \noexpand\getanddefine@fonts#2%
  206.              \expandafter\noexpand\csname #3/#4/#5\endcsname}}
  207. \def\select@group#1#2#3#4{\relax\ifmmode
  208.   \begingroup
  209.     \let\math@fonts\@empty  \escapechar\m@ne
  210.     \getanddefine@fonts#2#4%
  211.     \globaldefs\@ne  \math@fonts
  212.   \endgroup
  213.   \gdef#1{\use@mathgroup#3{#2}}%
  214. \expandafter #1\fi}
  215. \let\math@bgroup\begingroup
  216. \def\math@egroup#1{#1\endgroup}
  217. \def\glb@settings{\begingroup
  218.     \let\math@fonts\@empty
  219.     \ifmath@fonts
  220.      \csname S@\f@size\endcsname
  221.       \ifdefine@mathfonts
  222.         \escapechar\m@ne
  223.         \csname mv@\math@version \endcsname \fi
  224.     \fi
  225.     \globaldefs\@ne
  226.     \math@fonts
  227.     \let \glb@currsize \lcl@currsize
  228.   \endgroup}
  229. \newif\ifmath@fonts
  230. \math@fontstrue
  231. \def\default@fontshape{\fontfamily\default@family
  232.   \fontseries\default@series\fontshape\default@shape}
  233. \def\showhyphens#1{\setbox0\vbox{\parfillskip\z@skip\hsize\maxdimen
  234.   \default@fontshape\selectfont
  235.   \pretolerance\m@ne\tolerance\m@ne\hbadness\z@\showboxdepth\z@\ #1}}
  236. \def\addto@hook#1#2{#1\expandafter{\the#1#2}}
  237. \ifx\inputlineno\undefined
  238.   \let\on@line\@empty
  239. \else
  240.   \ifnum\inputlineno=\m@ne
  241.     \let\on@line\@empty
  242.   \else
  243.     \def\on@line{ on input line \the\inputlineno}
  244.   \fi
  245. \fi
  246.  
  247. \def\fileversion{v1.0r}
  248. \def\filedate{90/08/27}
  249. \def\docdate {90/04/05}
  250.  
  251. %% \CheckSum{336}
  252. %% \CharacterTable
  253. %%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
  254. %%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
  255. %%   Digits        \0\1\2\3\4\5\6\7\8\9
  256. %%   Exclamation   \!     Double quote  \"     Hash (number) \#
  257. %%   Dollar        \$     Percent       \%     Ampersand     \&
  258. %%   Acute accent  \'     Left paren    \(     Right paren   \)
  259. %%   Asterisk      \*     Plus          \+     Comma         \,
  260. %%   Minus         \-     Point         \.     Solidus       \/
  261. %%   Colon         \:     Semicolon     \;     Less than     \<
  262. %%   Equals        \=     Greater than  \>     Question mark \?
  263. %%   Commercial at \@     Left bracket  \[     Backslash     \\
  264. %%   Right bracket \]     Circumflex    \^     Underscore    \_
  265. %%   Grave accent  \`     Left brace    \{     Vertical bar  \|
  266. %%   Right brace   \}     Tilde         \~}
  267. %%
  268.  \immediate\write\sixt@@n{File: `tracefnt' \@spaces
  269.  \fileversion\space <\filedate>  (FMi and RmS)}
  270. \immediate\write\sixt@@n{English Documentation
  271.  \@spaces\space  <\docdate>  (FMi and RmS)}
  272. \def\extract@font{%
  273.     \def\@tempa{\def\extract@fontinfo####1}%
  274.     \edef\@tempb{<\expandafter\strip@prefix\meaning\f@size>}%
  275.     \expandafter\@tempa\@tempb##2##3<##4\@nil{%
  276.       \global\expandafter\font \font@name
  277.            \ifcase0##2##3\relax\or
  278.                    ##3
  279.                     \font@warning{Font/shape
  280.                               `\f@family/\f@series/\f@shape'
  281.                               in size \@tempb\space  not available}%
  282.                     \font@warning{Using external font `##3'
  283.                                     instead}\else
  284.                   \default@errfont \errhelp\nofont@help
  285.                          \errmessage{Font \expandafter
  286.                                     \string\font@name\space
  287.                                     not found}%
  288.                \fi
  289.               }%
  290.     \edef\font@info{\expandafter\expandafter\expandafter\string
  291.         \csname \f@family/\f@series/\f@shape \endcsname\@tempb}%
  292.     \expandafter\extract@fontinfo\font@info 3<\@nil
  293.     \csname +\f@family \expandafter
  294.        \endcsname \font@name \relax}
  295.  
  296. \def\selectfont{%
  297.     \xdef\font@name{%
  298.       \csname\f@family/\f@series/\f@shape/\f@size\endcsname}%
  299.     \pickup@font
  300.     \font@name
  301.     \ifx \glb@currsize \lcl@currsize
  302.      \else
  303.     \setnew@baselineskip
  304.     \baselineskip\baselinestretch\baselineskip
  305.     \setbox\strutbox\hbox{\vrule\@height.7\baselineskip
  306.         \@depth.3\baselineskip \@width\z@}%
  307.     \normalbaselineskip\baselineskip
  308.      \glb@settings \the\every@size
  309.        \aftergroup\glb@settings \fi
  310.     }
  311. \def\baselinestretch{1}
  312. \newtoks\every@size
  313. \every@size={}
  314. \def\use@mathgroup#1#2{\relax\ifmmode
  315.      \math@bgroup
  316.          #1\mathgroup#2\relax
  317.      \expandafter\math@egroup\fi}%
  318. \def\getanddefine@fonts#1#2{%
  319.   \xdef\font@name{\csname \string#2/\f@size\endcsname}%
  320.   \pickup@font \let\textfont@name\font@name
  321.   \xdef\font@name{\csname \string#2/\sf@size\endcsname}%
  322.   \pickup@font \let\scriptfont@name\font@name
  323.   \xdef\font@name{\csname \string#2/\ssf@size\endcsname}%
  324.   \pickup@font
  325.   \edef\math@fonts{\math@fonts
  326.                \textfont#1\textfont@name
  327.                \scriptfont#1\scriptfont@name
  328.                \scriptscriptfont#1\font@name}%
  329.     }
  330. \def\tracingfonts{\font@warning{\string\tracingfonts\space
  331.                   command not provided.^^J
  332.                   Use `tracefnt' option in \string\documentstyle\space
  333.                   command.^^J Command found:}%
  334.                   \count@}
  335. \def\font@warning#1{%
  336.           \immediate\write\sixt@@n{Warning: #1\on@line.}%
  337.           }
  338.  
  339. \def\fileversion{v1.1c}
  340. \def\filedate{90/06/06}
  341. \def\docdate {90/06/06}
  342.  
  343. %% \CheckSum{57}
  344. %% \CharacterTable
  345. %%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
  346. %%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
  347. %%   Digits        \0\1\2\3\4\5\6\7\8\9
  348. %%   Exclamation   \!     Double quote  \"     Hash (number) \#
  349. %%   Dollar        \$     Percent       \%     Ampersand     \&
  350. %%   Acute accent  \'     Left paren    \(     Right paren   \)
  351. %%   Asterisk      \*     Plus          \+     Comma         \,
  352. %%   Minus         \-     Point         \.     Solidus       \/
  353. %%   Colon         \:     Semicolon     \;     Less than     \<
  354. %%   Equals        \=     Greater than  \>     Question mark \?
  355. %%   Commercial at \@     Left bracket  \[     Backslash     \\
  356. %%   Right bracket \]     Circumflex    \^     Underscore    \_
  357. %%   Grave accent  \`     Left brace    \{     Vertical bar  \|
  358. %%   Right brace   \}     Tilde         \~}
  359. %% File `setsize.doc'.
  360. %% Copyright (C) 1989,1990,1991 Frank Mittelbach and Rainer Sch\"opf,
  361. %% all rights reserved.
  362. \immediate\write\sixt@@n{File: `setsize' \space
  363.  \@spaces \fileversion \space <\filedate> (FMi and RmS)}
  364. \immediate\write\sixt@@n{English Documentation
  365.       \space \@spaces <\docdate> (FMi and RmS)}
  366.  \def\normalsize{\@normalsize}
  367.  \def\@vpt{5}
  368.  \def\@vipt{6}
  369.  \def\@viipt{7}
  370.  \def\@viiipt{8}
  371.  \def\@ixpt{9}
  372.  \def\@xpt{10}
  373.  \def\@xipt{11}
  374.  \def\@xiipt{12}
  375.  \def\@xivpt{14}
  376.  \def\@xviipt{17}
  377.  \def\@xxpt{20}
  378.  \def\@xxvpt{25}
  379.  \define@mathsizes{5}{5}{5}
  380.  \define@mathsizes{6}{5}{5}
  381.  \define@mathsizes{7}{6}{5}
  382.  \define@mathsizes{8}{6}{5}
  383.  \define@mathsizes{9}{6}{5}
  384.  \define@mathsizes{10}{7}{5}
  385.  \define@mathsizes{11}{7}{5}
  386.  \define@mathsizes{12}{8}{6}
  387. \define@mathsizes{14}{10}{7}
  388. \define@mathsizes{17}{12}{10}
  389. \define@mathsizes{20}{14}{12}
  390.  \define@mathsizes{25}{20}{17}
  391. \def\fileversion{v1.1h}
  392. \def\filedate{90/06/26}
  393. \def\docdate {90/06/26}
  394.  
  395. %% \CheckSum{304}
  396. %% \CharacterTable
  397. %%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
  398. %%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
  399. %%   Digits        \0\1\2\3\4\5\6\7\8\9
  400. %%   Exclamation   \!     Double quote  \"     Hash (number) \#
  401. %%   Dollar        \$     Percent       \%     Ampersand     \&
  402. %%   Acute accent  \'     Left paren    \(     Right paren   \)
  403. %%   Asterisk      \*     Plus          \+     Comma         \,
  404. %%   Minus         \-     Point         \.     Solidus       \/
  405. %%   Colon         \:     Semicolon     \;     Less than     \<
  406. %%   Equals        \=     Greater than  \>     Question mark \?
  407. %%   Commercial at \@     Left bracket  \[     Backslash     \\
  408. %%   Right bracket \]     Circumflex    \^     Underscore    \_
  409. %%   Grave accent  \`     Left brace    \{     Vertical bar  \|
  410. %%   Right brace   \}     Tilde         \~}
  411. %% \changes{v1.1f}{90/04/05}{`endinput at the end removed.}
  412. \immediate\write\sixt@@n{File: `latint' \space\space
  413.  \@spaces\fileversion\space <\filedate>  (FMi and RmS)}
  414. \immediate\write\sixt@@n{English Documentation
  415.  \@spaces\space <\docdate>  (FMi and RmS)}
  416. \newif\if@tempswa
  417. \def\in@#1#2{%
  418.  \def\in@@##1#1##2##3\in@@{%
  419.   \ifx\in@##2\in@false\else\in@true\fi}%
  420.  \in@@#2#1\in@\in@@}
  421. \newif\ifin@
  422. \let\version@list=\@empty
  423. \def\@gobblefour#1#2#3#4{}
  424. \def\new@mathversion#1{%
  425. %% \changes{v1.1c}{89/11/27}{`versionlist enclosed in braces.}
  426.   \expandafter\in@\expandafter#1\expandafter{\version@list}%
  427.   \ifin@
  428.     \@latexerr{Math version
  429.                `\expandafter\@gobblefour\string#1'
  430.                already defined}\@eha
  431.   \else
  432.      \def\@tempa{\noexpand\@tempa\noexpand}%
  433.      \edef\version@list{\version@list\@tempa#1}%
  434.      \def\@tempc{\noexpand\@tempc\noexpand}%
  435.      \let\@tempe\relax
  436.      \def\@tempb##1##2##3{%
  437.           \edef##1{\expandafter\remove@nil##1%
  438.                    \@tempc
  439.                    #1%
  440.                    \@tempe
  441.                    \noexpand\@nil}}%
  442.      \alpha@list
  443.   \fi}
  444. \def\remove@nil#1#2\@nil{%
  445.   \noexpand#1\noexpand#2}
  446. \def\newmathalphabet{%
  447.   \@ifstar{\newmathalphabet@@@}%
  448.           {\newmathalphabet@@}}
  449. \def\newmathalphabet@@#1{%
  450.   \newmathalphabet@@@#1{}{}{}}
  451. \def\newmathalphabet@@@#1#2#3#4{%
  452.  \edef\group@number{\expandafter
  453.   \noexpand\csname\expandafter\@gobble
  454.   \string #1@group\endcsname}%
  455.    \expandafter\ifx\group@number\relax
  456.      \@tempswafalse
  457.      \ifx\undefined#1\else\@tempswatrue\fi
  458.    \else
  459.      \@tempswatrue
  460.    \fi
  461.    \if@tempswa
  462.      \@latexerr{Math alphabet
  463.                 `\string#1' already defined}\@eha
  464.    \else
  465.    \expandafter\new@mathgroup\group@number
  466.    \new@internalmathalphabet{#1}%
  467.       {\group@number}{#2}{#3}{#4}%
  468.   \fi}
  469. \let\alpha@list\@empty
  470. %% \changes{v1.1h}{90/06/26}{Macro added.}
  471. \let\used@alpha@list\@empty
  472. \def\new@internalmathalphabet#1#2#3#4#5{%
  473.     \def\@tempb{\noexpand\@tempb\noexpand}%
  474.     \edef\alpha@list{\alpha@list\@tempb#1%
  475.                               {#2}%
  476.                               {{#3}{#4}{#5}}}%
  477.     \let\@tempe\relax
  478.     \let\@tempc\relax
  479.     \def\@tempa##1{\@tempc
  480.                    \noexpand##1%
  481.                    \@tempe}%
  482.     \edef#1{\noexpand\set@alpha
  483.             \noexpand#1%
  484.             \version@list
  485.             \noexpand\@nil}%
  486. }
  487. \def\addtoversion#1{%
  488.   \expandafter\addtoversion@
  489.     \csname mv@#1\endcsname}
  490. \def\addtoversion@#1#2#3#4#5{%
  491. %% \changes{v1.1c}{89/11/27}{`versionlist and `alphalist enclosed
  492. %%          in braces.}
  493.   \expandafter\in@\expandafter#1\expandafter{\version@list}%
  494.   \ifin@
  495.     \expandafter\in@\expandafter#2\expandafter{\alpha@list}%
  496.     \ifin@
  497.       \def\next##1#1##2##3\@nil{%
  498.         \ifx##2\@tempe
  499.           \def#2{##1#1{{#3}{#4}{#5}}##3\@nil}%
  500.         \else
  501.           \@latexerr{%
  502.              Math alphabet identifier `\string#2' already
  503.              defined for math version `\expandafter
  504.              \@gobblefour\string#1'}%
  505.              {Maybe you typed the same command twice?}%
  506.         \fi}%
  507.      \expandafter\next#2%
  508. %% \changes{v1.1h}{90/06/26}{Extra check and error message for
  509. %%                           already used math alphabet identifiers.}
  510.     \else
  511.       \expandafter\in@\expandafter#2\expandafter{\used@alpha@list}%
  512.       \ifin@
  513.         \@latexerr{%
  514.            Math alphabet identifier `\string#2' already used
  515.            to produce text}%
  516.            {A math alphabet identifier can only be added to a
  517.             math version^^Jbefore its first use in math.^^J%
  518.             Remedy: Move this \string\addtoversion
  519.             \space declaration up.}%
  520.       \else
  521.         \@latexerr{%
  522.            Math alphabet identifier `\string#2' not defined}%
  523.            {Use \string\newmathalphabet\space to define it.}%
  524.       \fi
  525.     \fi
  526.   \else
  527.     \@latexerr{%
  528.        Math version `\expandafter\@gobblefour\string#1' is not
  529.        defined}{You probably mispelled the name of the math
  530.        version.^^JOr you have to specify another document
  531.        style option^^Jin the \string\documentstyle\space
  532.        command.}%
  533.   \fi
  534. }
  535. \def\process@table{%
  536.     \def\@tempc{\noexpand\@tempc\noexpand}%
  537.     \def\@tempb##1##2##3{\def\@tempe{{##3}}%
  538.                          \edef##1{##1}}%
  539.     \let\set@alpha\@gobble
  540.     \let\@nil\@empty
  541.     \alpha@list
  542. %% \changes{v1.1f}{90/01/18}{Changed to set math all alphabet
  543. %%           identifiers to `relax.}
  544.     \def\@tempb##1##2##3{%
  545.       \def\@tempc####1####2{%
  546.         \define@mathalphabet####1##1##2####2}%
  547.       ##1%
  548.       \let ##1\relax}%
  549. %% \changes{v1.1h}{90/06/26}{Added clearing of `used@alpha@list.}
  550.     \alpha@list
  551.     \let\used@alpha@list\@empty}
  552. %% \changes{v1.1e}{89/12/16}{Completely revised.}
  553. \def\set@alpha#1#2\@nil{%
  554.    \relax\ifmmode
  555. %% \changes{v1.1h}{90/06/26}{Added updating of `used@alpha@list.}
  556.    \expandafter\gdef\expandafter\used@alpha@list\expandafter
  557.      {\used@alpha@list#1}%
  558.    \def\next##1\@tempb#1##2##3##4\@nil{%
  559.        \def\@tempd{##2}%
  560.        \def\@tempe{{##3}}%
  561.        \gdef\alpha@list{##1##4}}%
  562.    \expandafter\next\alpha@list\@nil
  563.    \begingroup
  564.     \def\@tempc{\noexpand\@tempc\noexpand}%
  565.     \let\set@alpha\@gobble
  566.     \let\@nil\@empty
  567.     \xdef#1{#1}%
  568.    \endgroup
  569.    \def\@tempc##1##2{%
  570.           \define@mathalphabet##1#1\@tempd##2}%
  571. %% \changes{v1.1e}{89/12/16}{Argument \#1 called twice in the end.}
  572.    #1%
  573.    \glb@settings
  574.    \expandafter #1\fi}
  575. \def\fileversion{v1.2a}
  576. \def\filedate{91/11/27}
  577. \def\docdate {91/11/27}
  578.  
  579. %% \CheckSum{840}
  580. %% \CharacterTable
  581. %%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
  582. %%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
  583. %%   Digits        \0\1\2\3\4\5\6\7\8\9
  584. %%   Exclamation   \!     Double quote  \"     Hash (number) \#
  585. %%   Dollar        \$     Percent       \%     Ampersand     \&
  586. %%   Acute accent  \'     Left paren    \(     Right paren   \)
  587. %%   Asterisk      \*     Plus          \+     Comma         \,
  588. %%   Minus         \-     Point         \.     Solidus       \/
  589. %%   Colon         \:     Semicolon     \;     Less than     \<
  590. %%   Equals        \=     Greater than  \>     Question mark \?
  591. %%   Commercial at \@     Left bracket  \[     Backslash     \\
  592. %%   Right bracket \]     Circumflex    \^     Underscore    \_
  593. %%   Grave accent  \`     Left brace    \{     Vertical bar  \|
  594. %%   Right brace   \}     Tilde         \~}
  595. %% File `lfonts.doc'.
  596. %% Copyright (C) 1989,1990,1991 Frank Mittelbach and Rainer Sch\"opf,
  597. %% all rights reserved.
  598. %% \changes{v1.2a}{91/11/27}{All `family, `shape etc. renamed to
  599. %%                          `fontfamily etc.}
  600. %% \changes{v1.1i}{90/04/02}{`input of files now handled by docstrip.}
  601. %% \changes{v1.1g}{90/02/08}{Protected the commands `family, `series,
  602. %% \changes{v1.1c}{89/12/03}{Some internal macros renamed to make them
  603. %%           inaccessible.}
  604. %% \changes{v1.1b}{89/12/02}{`rmmath renamed to `mathrm}
  605. %% \changes{v1.0i}{89/11/07}{All family, series, and shape names
  606. %% \changes{v1.0g}{89/05/22}{Lines shortened to 72 characters}
  607. %% \changes{v1.0f}{89/04/29}{Corrections to \LaTeX tabular env. added.}
  608. %% \changes{v1.0e}{89/04/27}{Definitions of \LaTeX symbols corrected.}
  609. %% \changes{v1.0d}{89/04/26}{`xpt added.}
  610. %% \changes{v1.0c}{89/04/21}{Changed to conform to fam.tex.}
  611. %% \changes{v1.0b}{89/04/15}{`mathfontset renamed to `mathversion.}
  612. %% \changes{v1.0a}{89/04/10}{Starting with version numbers!
  613. %%           `newif for `@tempswa added since this switch is
  614. %%           unkown at the time when this file is read in.
  615. %%           (latex.tex is loaded later.)
  616. %%           `math@famname changed to `math@version.}
  617. \immediate\write\sixt@@n{File: `lfonts' \space\space
  618.  \@spaces\fileversion\space <\filedate> (FMi and RmS)}
  619. \immediate\write\sixt@@n{English Documentation
  620.              \@spaces\space  <\docdate> (FMi and RmS)}
  621. \input fontdef.tex
  622. \input preload.tex
  623. %% \changes{v1.1g}{90/02/08}{Macro added.}
  624. \let\p@fontfamily=\fontfamily
  625. \def\fontfamily{\protect\p@fontfamily}
  626. \let\family=\fontfamily
  627. %% \changes{v1.1g}{90/02/08}{Macro added.}
  628. \let\p@fontseries=\fontseries
  629. \def\fontseries{\protect\p@fontseries}
  630. \let\series=\fontseries
  631. %% \changes{v1.1g}{90/02/08}{Macro added.}
  632. \let\p@fontshape=\fontshape
  633. \def\fontshape{\protect\p@fontshape}
  634. \let\shape=\fontshape
  635. %% \changes{v1.1g}{90/02/08}{Macro added.}
  636. \let\p@fontsize=\fontsize
  637. \def\fontsize{\protect\p@fontsize}
  638. \let\size=\fontsize
  639. %% \changes{v1.1g}{90/02/08}{Macro added.}
  640. \let\p@selectfont=\selectfont
  641. \def\selectfont{\protect\p@selectfont}
  642. %% \changes{v1.1g}{90/02/08}{Macro added.}
  643. \let\p@mathversion=\mathversion
  644. \def\mathversion{\protect\p@mathversion}
  645. \new@mathversion\mv@normal
  646. \new@mathversion\mv@bold
  647. %% \changes{v1.0k}{89/11/08}{Changed first argument according to
  648. %% \changes{v1.0l}{89/11/14}{Changes in naming of math  and \LaTeX{}
  649. \define@mathgroup\mv@normal{0}
  650.                  {cmr}{m}{n}
  651. \define@mathgroup\mv@normal{1}
  652.                  {cmm}{m}{it}
  653. \define@mathgroup\mv@normal{2}
  654.                  {cmsy}{m}{n}
  655.  
  656. \define@mathgroup\mv@bold{0}
  657.                  {cmr}{bx}{n}
  658. \define@mathgroup\mv@bold{1}
  659.                  {cmm}{b}{it}
  660. \define@mathgroup\mv@bold{2}
  661.                  {cmsy}{b}{n}
  662. \textfont 3 = \csname cmex/m/n/10\endcsname
  663. \scriptfont 3 = \csname cmex/m/n/10\endcsname
  664. \scriptscriptfont 3 = \csname cmex/m/n/10\endcsname
  665. \expandafter\let\expandafter\tenex \the\textfont 3
  666. %% \changes{v1.1e}{90/01/21}{Use new interface: `use@mathgroup.}
  667. %% \changes{v1.1e}{90/01/21}{Use new interface: `use@mathgroup.}
  668. %% \changes{v1.1e}{90/01/21}{Use new interface: `use@mathgroup.}
  669. %% \changes{v1.1b}{89/11/28}{`rmmath $\to$ `mathrm.}
  670. {\catcode`\= 11
  671. \gdef\mathrm{\use@mathgroup \=cmr \z@}
  672. \gdef\mit{\use@mathgroup \=cmm \@ne}
  673. \gdef\cal{\use@mathgroup \=cmsy \tw@}
  674. }
  675. \def\rm{\protect\prm}
  676. \def\sf{\protect\psf}
  677. \def\tt{\protect\ptt}
  678. \def\bf{\protect\pbf}
  679. \def\sl{\protect\psl}
  680. \def\sc{\protect\psc}
  681. \def\it{\protect\pit}
  682. %% \changes{v1.1f}{90/01/28}{Macro added.}
  683. %% \changes{v1.1f}{90/01/28}{Macro added.}
  684. %% \changes{v1.1f}{90/01/28}{Macro added.}
  685. %% \changes{v1.1f}{90/01/28}{Macro added.}
  686. %% \changes{v1.1f}{90/01/28}{Macro added.}
  687. %% \changes{v1.1f}{90/01/28}{Macro added.}
  688. %% \changes{v1.1f}{90/01/28}{Macro added.}
  689. %% \changes{v1.1h}{90/02/17}{Macro added.}
  690. %% \changes{v1.1h}{90/02/17}{Macro added.}
  691. \def\rmdefault{cmr}
  692. \def\sfdefault{cmss}
  693. \def\ttdefault{cmtt}
  694. \def\bfdefault{bx}
  695. \def\itdefault{it}
  696. \def\sldefault{sl}
  697. \def\scdefault{sc}
  698. \def\mediumseriesdefault{m}
  699. \def\normalshapedefault{n}
  700. %% \changes{v1.1e}{90/01/21}{Renamed to `mediumseries.}
  701. %% \changes{v1.0h}{89/08/15}{Introduced `normalshape and
  702. %% \changes{v1.1h}{90/02/17}{Now user default used.}
  703. \def\mediumseries{\protect\pmediumseries}
  704. \def\pmediumseries{\fontseries\mediumseriesdefault\selectfont}
  705. \def\normalshape{\protect\pnormalshape}
  706. \def\pnormalshape{\fontshape\normalshapedefault\selectfont}
  707. \def\boldmath{\@nomath\boldmath
  708.               \mathversion{bold}}
  709. \def\unboldmath{\@nomath\unboldmath
  710.                 \mathversion{normal}}
  711. \def\math@version{normal}
  712. \def\hexnumber@#1{\ifcase#1 \z@
  713.  \or \@ne \or \tw@ \or \thr@@
  714.  \or 4\or 5\or 6\or 7\or 8\or
  715.  9\or A\or B\or C\or D\or E\or F\fi}
  716. %% \changes{v1.1e}{90/01/25}{Macro added for math operators.}
  717. \def\operator@font{\mathgroup\z@}
  718. %% \changes{v1.1e}{90/01/25}{All math operators added and changed.}
  719. \def\log{\mathop{\operator@font log}\nolimits}
  720. \def\lg{\mathop{\operator@font lg}\nolimits}
  721. \def\ln{\mathop{\operator@font ln}\nolimits}
  722. \def\lim{\mathop{\operator@font lim}}
  723. \def\limsup{\mathop{\operator@font lim\,sup}}
  724. \def\liminf{\mathop{\operator@font lim\,inf}}
  725. \def\sin{\mathop{\operator@font sin}\nolimits}
  726. \def\arcsin{\mathop{\operator@font arcsin}\nolimits}
  727. \def\sinh{\mathop{\operator@font sinh}\nolimits}
  728. \def\cos{\mathop{\operator@font cos}\nolimits}
  729. \def\arccos{\mathop{\operator@font arccos}\nolimits}
  730. \def\cosh{\mathop{\operator@font cosh}\nolimits}
  731. \def\tan{\mathop{\operator@font tan}\nolimits}
  732. \def\arctan{\mathop{\operator@font arctan}\nolimits}
  733. \def\tanh{\mathop{\operator@font tanh}\nolimits}
  734. \def\cot{\mathop{\operator@font cot}\nolimits}
  735. \def\coth{\mathop{\operator@font coth}\nolimits}
  736. \def\sec{\mathop{\operator@font sec}\nolimits}
  737. \def\csc{\mathop{\operator@font csc}\nolimits}
  738. \def\max{\mathop{\operator@font max}}
  739. \def\min{\mathop{\operator@font min}}
  740. \def\sup{\mathop{\operator@font sup}}
  741. \def\inf{\mathop{\operator@font inf}}
  742. \def\arg{\mathop{\operator@font arg}\nolimits}
  743. \def\ker{\mathop{\operator@font ker}\nolimits}
  744. \def\dim{\mathop{\operator@font dim}\nolimits}
  745. \def\hom{\mathop{\operator@font hom}\nolimits}
  746. \def\det{\mathop{\operator@font det}}
  747. \def\exp{\mathop{\operator@font exp}\nolimits}
  748. \def\Pr{\mathop{\operator@font Pr}}
  749. \def\gcd{\mathop{\operator@font gcd}}
  750. \def\deg{\mathop{\operator@font deg}\nolimits}
  751.  
  752. \def\bmod{\mskip-\medmuskip\mkern5mu
  753.   \mathbin{\operator@font mod}\penalty900\mkern5mu\mskip-\medmuskip}
  754. \def\pmod#1{\allowbreak\mkern18mu({\operator@font mod}\,\,#1)}
  755. %% \changes{v1.1e}{90/01/25}{Completely redefined.}
  756. \def\${\protect\pdollar}
  757. \def\pdollar{\text{\ifdim \fontdimen\@ne\font >\z@
  758.               \sl \else \normalshape \fi\char`\$}}
  759. \def\pounds{{\protect\ppounds}}
  760. \def\ppounds{\text{\ifdim \fontdimen\@ne\font >\z@
  761.     \it \else \fontshape u\selectfont \fi \char'44}}
  762. %% \changes{v1.1e}{90/01/25}{Macro added.}
  763. %% \changes{v1.1k}{90/06/23}{Changed to `mbox.}
  764. \def\text{\mbox}
  765.  
  766. \def\copyright{{\protect\pcopyright}}
  767. \def\pcopyright{\ooalign{\hfil
  768.      \raise.07ex\hbox{\mediumseries\normalshape c}\hfil\crcr
  769.      \mathhexbox20D}}
  770. \input xxxlfont.sty
  771. %%  \changes{v1.1n}{91/09/28}{Cleanup for new LaTeX version.}
  772. \newif\if@twocolumn
  773. \newif\if@filesw
  774. \newif\if@specialpage
  775. \newif \if@twoside
  776. \ifx\undefined\reset@font
  777. \errhelp{The LaTeX that you use was released before December 1, 91.^^J^^J%
  778.          At that time several changes have been introduced into
  779.          LaTeX and the standard^^Jstyles to support this version of
  780.          NFSS.^^J^^J%
  781.          NFSS will probably work with your version but you might
  782.          encounter problems^^Jin certain situations (most of them are
  783.          described in the `nfss.bug' file).^^J^^J%
  784.          Since the new LaTeX release also fix many bugs we suggest
  785.          that you upgrade^^Jas soon as possible.^^J^^J}
  786. \errmessage{Old LaTeX version! Type `h'}
  787. \def\xpt{{\def\do{\noexpand\do\noexpand}%
  788.    \xdef\@preamblecmds{\@preamblecmds
  789. %% \changes{v1.1j}{90/06/03}{Removed `xpt from `@preamblecmds}
  790. %% \changes{v1.1k}{90/06/23}{`addstuffto@version added to `preamblecmds.}
  791.               \do\addtoversion
  792.               \do\addtoversion@
  793.               \do\addstuffto@version
  794.               \do\define@mathalphabet
  795.               \do\define@mathgroup
  796.               \do\define@mathsizes
  797.               \do\define@nomathsize
  798.               \do\extra@def
  799.               \do\hexnumber@
  800.               \do\new@fontshape
  801.               \do\new@internalmathalphabet
  802.               \do\new@mathgroup
  803.               \do\new@mathversion
  804.               \do\newmathalphabet
  805.               \do\newmathalphabet@@
  806.               \do\newmathalphabet@@@
  807.               \do\preload@sizes
  808.               \do\process@table
  809.               \do\remove@nil
  810.               \do\set@alpha
  811.               \do\subst@fontshape
  812.               }}%
  813.    \def\@tabclassz{\ifcase \@lastchclass
  814.           \@acolampacol \or \@ampacol \or
  815.           \or \or \@addamp \or
  816.           \@acolampacol \or
  817.           \@firstampfalse \@acol \fi
  818.     \edef\@preamble{\@preamble{%
  819.       \ifcase \@chnum
  820.         \hfil\ignorespaces\@sharp\unskip\hfil
  821.        \or \ignorespaces\@sharp\unskip\hfil
  822.        \or \hfil\hskip\z@
  823.           \ignorespaces\@sharp\unskip\fi}}}%
  824.   \def\@ishortstack##1{\halign{\mb@l {####}%
  825.            \unskip\mb@r\cr ##1\crcr}\egroup}%
  826.   \def\cases##1{\left\{\,\vcenter{%
  827.       \normalbaselines\m@th\ialign{%
  828.          $####\hfil$&\quad{####}\hfil\crcr
  829.          ##1\crcr}}\right.}%
  830. \def\document{\endgroup
  831.   \@colht\textheight  \@colroom\textheight \vsize\textheight
  832.    \columnwidth\textwidth \@clubpenalty\clubpenalty
  833.    \if@twocolumn \advance\columnwidth -\columnsep
  834.       \divide\columnwidth\tw@ \hsize\columnwidth \@firstcolumntrue
  835.    \fi
  836.   \hsize\columnwidth \linewidth\hsize
  837.   \begingroup\@floatplacement\@dblfloatplacement
  838.    \makeatletter\let\@writefile\@gobbletwo
  839.    \@input{\jobname.aux}\endgroup
  840.   \if@filesw \immediate\openout\@mainaux=\jobname.aux
  841.     \immediate\write\@mainaux{\relax}\fi
  842.   \process@table
  843. %% \changes{v1.1l}{90/10/12}{Force `baselineskip initialisation.}
  844.   \let\glb@currsize\@empty
  845.   \def\do####1{\let ####1\@notprerr}%
  846.   \@preamblecmds
  847.   \let\do\noexpand
  848.   \@normalsize\everypar{}}%
  849.   \def\@begintheorem##1##2{\trivlist
  850.     \item[\hskip \labelsep{\bf ##1\ ##2}]\it}%
  851.   \def\@opargbegintheorem##1##2##3{\trivlist
  852.       \item[\hskip \labelsep{\bf ##1\ ##2\ (##3)}]\it}%
  853. %% \changes{v1.1h}{90/02/17}{`@outputpage redefined.}
  854.   \def\@outputpage{\begingroup %\catcode`\ =10
  855.      \let\-\@dischyph \let\'\@acci \let\`\@accii \let\=\@acciii
  856.     \if@specialpage
  857.      \global\@specialpagefalse
  858.           \csname ps@\@specialstyle\endcsname\fi
  859.      \if@twoside
  860.        \ifodd\count\z@ \let\@thehead\@oddhead \let\@thefoot\@oddfoot
  861.             \let\@themargin\oddsidemargin
  862.           \else \let\@thehead\@evenhead
  863.           \let\@thefoot\@evenfoot \let\@themargin\evensidemargin
  864.      \fi\fi
  865.      \shipout\vbox{%
  866.            \rm \mediumseries \normalshape
  867.            \normalsize
  868.            \baselineskip\z@ \lineskip\z@
  869.            \let\par\@@par %% 15 Sep 87
  870.            \vskip \topmargin \moveright\@themargin
  871.            \vbox{\setbox\@tempboxa
  872.                    \vbox to\headheight{\vfil \hbox to\textwidth
  873.                                        {\let\label\@gobble \let\index\@gobble
  874.                                          \@thehead}}%% 22 Feb 87
  875.                  \dp\@tempboxa\z@
  876.                  \box\@tempboxa
  877.                  \vskip \headsep
  878.                  \box\@outputbox
  879.                  \baselineskip\footskip
  880.                  \hbox to\textwidth{\let\label\@gobble
  881.                            \let\index\@gobble  %% 22 Feb 87
  882.                            \@thefoot}}}\global\@colht\textheight
  883.            \endgroup\stepcounter{page}\let\firstmark\botmark}%
  884. %% \changes{v1.1j}{90/06/03}{Redefined `xpt for letter.sty}
  885.         \def\xpt{\fontsize{10}{12pt}\selectfont}}
  886. \else
  887. \def\xpt{{\def\do{\noexpand\do\noexpand}%
  888.    \xdef\@preamblecmds{\@preamblecmds
  889.               \do\addtoversion
  890.               \do\addtoversion@
  891.               \do\addstuffto@version
  892.               \do\define@mathalphabet
  893.               \do\define@mathgroup
  894.               \do\define@mathsizes
  895.               \do\define@nomathsize
  896.               \do\extra@def
  897.               \do\hexnumber@
  898.               \do\new@fontshape
  899.               \do\new@internalmathalphabet
  900.               \do\new@mathgroup
  901.               \do\new@mathversion
  902.               \do\newmathalphabet
  903.               \do\newmathalphabet@@
  904.               \do\newmathalphabet@@@
  905.               \do\preload@sizes
  906.               \do\process@table
  907.               \do\remove@nil
  908.               \do\set@alpha
  909.               \do\subst@fontshape
  910.               }}}
  911. \fi
  912. %% \changes{v1.1n}{91/08/26}{Macro introduced.}
  913. %% \changes{v1.1o}{91/11/21}{Changed to protected version of macro.}
  914. %% \changes{v1.1o}{91/11/21}{Added extra braces for robustness.}
  915. \def\reset@font{\protect\p@reset@font}
  916. \def\p@reset@font{\fontfamily{\rmdefault}%
  917.                   \fontseries{\mediumseriesdefault}%
  918.                   \fontshape{\normalshapedefault}\selectfont}
  919.  
  920. \endinput
  921. %% 
  922. %% End of file `/usr2/distrib/latex209/nfss/lfonts.new'.
  923.